package dao.jpa;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

import org.hibernate.Criteria;
import org.hibernate.criterion.Restrictions;
import org.springframework.stereotype.Repository;

import dao.ItemCompraDAO;
import entity.ItemCompra;
import entity.Produto;

@Repository
public class ItemCompraJpaDAO extends GenericJpaDAO<ItemCompra> implements ItemCompraDAO, Serializable {

	private static final long serialVersionUID = -7769051838144785979L;

	@SuppressWarnings("unchecked")
	@Override
	public List<ItemCompra> listarComprasProdutoPorPeriodo(final Produto produto, final Date dataInicial,
			final Date dataFinal) {
		Criteria criteria = criarCriteria();
		criteria.add(Restrictions.eq("produto", produto));
		return criteria.createCriteria("compra").add(Restrictions.between("dataCompra", dataInicial, dataFinal)).list();
	}
}
